package editorsvg.css;

import editorsvg.editor.documento.ElementoSVG;

/**
 *
 * @author Jorge
 */
public abstract class Condicion {

//    protected Condicion siguiente;
//
//    public final void setSiguiente(Condicion siguiente) {
//        this.siguiente = siguiente;
//    }
//
//    public final Condicion getSiguiente() {
//        return siguiente;
//    }

    public abstract boolean evaluar(ElementoSVG elemento, Regla regla);

//    public boolean evaluarSiguiente(ElementoSVG elemento, Regla regla) {
//        if (siguiente != null) {
//            return siguiente.evaluar(elemento, regla);
//        }
//
//        if (regla != null) {
//            regla.aplicarAsignaciones(elemento);
//        }
//        return true;
//    }

    public abstract int getEspecificidad();

//    protected final int siguienteEspecificidad() {
//        return getSiguiente() != null ? getSiguiente().getEspecificidad() : 0;
//    }
}
